widget: Update when font settings change
authorMatthias Clasen <mclasen@redhat.com>
Tue, 21 Apr 2020 20:26:36 +0000 (16:26 -0400)
committerMatthias Clasen <mclasen@redhat.com>
Wed, 22 Apr 2020 23:30:48 +0000 (19:30 -0400)
Update the pango context when font-related settings
change, using the new GtkSystemSetting mechanism.

gtk/gtkwidget.c

index 8d8d3d366b75b6c39e541b69a28c87319847f9ee..6b0b80a50d771b6f9dad62af0f2398d84138fc28 100644 (file)
@@ -4874,6 +4874,15 @@ gtk_widget_real_system_setting_changed (GtkWidget        *widget,
 {
   GtkWidget *child;
 
+  if (setting == GTK_SYSTEM_SETTING_DPI ||
+      setting == GTK_SYSTEM_SETTING_FONT_NAME ||
+      setting == GTK_SYSTEM_SETTING_FONT_CONFIG)
+    {
+      gtk_widget_update_pango_context (widget);
+      if (gtk_widget_peek_pango_context (widget))
+        gtk_widget_queue_resize (widget);
+    }
+
   for (child = _gtk_widget_get_first_child (widget);
        child != NULL;
        child = _gtk_widget_get_next_sibling (child))